home *** CD-ROM | disk | FTP | other *** search
/ 1,000+ Hot Games / 1000-Plus-Hot-Games-1999.zip / 1000+ Hot Games (1999) / PROGRAMS / CARDWS17 / INC / PREDICAT.CDH < prev    next >
Text File  |  1994-01-08  |  2KB  |  70 lines

  1. #ifndef cwspredicat
  2. #define cwspredicat
  3.  
  4. {****c2 est un de plus que c1}  
  5. predicate FollowRankWrap?(c1, c2 : Card) is
  6.   return ((c1 + 1) mod 13) = (c2 mod 13);
  7.  
  8. {****c2 est n de plus que c1}  
  9. predicate FollowRankWrapN?(n : integer; c1, c2 : Card) is
  10.   return ((c1 + n) mod 13) = (c2 mod 13);
  11.  
  12. {****c2 est un de plus que c1}  
  13. predicate FollowRank?(c1, c2 : Card) is
  14.   return ((c1 mod 13) + 1) = (c2 mod 13);
  15.  
  16. {****c2 est n de plus que c1}  
  17. predicate FollowRankN?(n : integer; c1, c2 : Card) is
  18.   return ((c1 mod 13) + n) = (c2 mod 13);
  19.  
  20. {****c1 et c2 sont de meme sorte et c1 est un de plus que c2}
  21. predicate FollowSuit?(c1, c2 : card) is
  22.   return ((c1 / 13)=(c2 / 13)) and (c1=(c2+1));
  23.  
  24. //-------------------------------------------  
  25.   
  26. {****c1 et c2 sont de couleurs diffente}
  27. predicate AlternateColor?(c1, c2 : Card) is
  28.   return (((c1 / 13) + (c2 / 13)) mod 2) = 1;
  29.  
  30. //-------------------------------------------  
  31.   
  32. {****c1 et c2 sont de meme sorte}
  33. predicate SameSuit?(c1, c2 : Card) is
  34.   return (c1 / 13) = (c2 / 13);
  35.     
  36. {****c1 et c2 sont du meme Rang}
  37. predicate SameRank?(c1, c2 : Card) is
  38.   return (c1 mod 13) = (c2 mod 13);
  39.  
  40. {****c1 et c2 ont la meme face}
  41. predicate SameCard?(c1, c2 : Card) is
  42.   return (c1 mod DeckSize) = (c2 mod DeckSize);
  43.  
  44. {****c1 et c2 sont de la meme couleurs}
  45. predicate SameColor?(c1, c2 : Card) is
  46.   return (((c1 / 13) + (c2 / 13)) mod 2) = 0;
  47.  
  48. //-------------------------------------------  
  49.   
  50. {****determine si la carte est de dos}
  51. predicate IsSideDown?(c1 : card) is 
  52.   return (c1 / DeckSize)=down;
  53.  
  54. {****determine si la carte ombragee}
  55. predicate IsShaded?(c1 : card) is 
  56.   return (c1 / DeckSize)=shaded;
  57.  
  58. {****c1 est plus petit que c2}  
  59. predicate Smaller?(c1, c2 : Card) is
  60.   return (c1 mod 13) < (c2 mod 13);
  61.  
  62. {****verifie si c1 est un as}
  63. predicate IsAce?(c1 : card) is
  64.   return (c1 mod 13)=Ace;
  65.  
  66. {****verifie si c1 est un roi}
  67. predicate IsKing?(c1 : card) is
  68.   return (c1 mod 13)=King;
  69.   
  70. #endif